零基础编写一个串口&网络调试助手(一)
点击下方“果果小师弟”,选择“置顶/星标公众号”
干货福利,第一时间送达!
摘要:作为一名嵌入式开发行者QT是必须要学的,也许现在不学以后也要学习的。一方面,在嵌入式初学阶段,也就是裸机开发,可能需要自己写上位机,QT就是一个做上位机的一个好用的工具,一般只要会c++学习QT一天就可以入门。另一方面,市场上任何一款产品几乎都带图形界面,市场上很火的Android、IOS编程无非也是GUI app编程,GUI编程都是差不多,学习Qt后再学习Android、IOS,是很容易的。就算不学习Android、IOS,由于Qt跨平台特性,通过Qt写的程序也可以在Android、IOS平台上运行。
QT简介
是一个跨平台的C++应用程序开发框架 具有短平快的优秀特质: 投资少、周期短、见效快、效益高 几乎支持所有的平台, 可用于桌面程序开发以及嵌入式开发 有属于自己的事件处理机制 Qt是标准c++的扩展, c++的语法在Qt中都是支持的 良好封装机制使得 Qt 的模块化程度非常高,可重用性较好,可以快速上手。 Qt 提供了一种称为 signals/slots 的安全类型来替代 callback,这使得各个元件 之间的协同工作变得十分简单。 广泛用于开发GUI程序,也可用于开发非GUI程序。 graphical user interface
有丰富的 API Qt 包括多达 250 个以上的 C++ 类 可以处理正则表达式。 支持 2D/3D 图形渲染,支持 OpenGL Qt给程序猿提供了非常详细的官方文档 支持XML,Json 框架底层模块化, 使用者可以根据需求选择相应的模块来使用
Qt案例
VirtualBox
:虚拟机软件。VLC多媒体播放器
:一个体积小巧、功能强大的开源媒体播放器。YY语音
:又名“歪歪语音”,是一个可以进行在线多人语音聊天和语音会议的免费软件。咪咕音乐
:咪咕音乐是中国移动倾力打造的正版音乐播放器WPS Office
:金山公司(Kingsoft)出品的办公软件,与微软Office兼容性良好,个人版免费。Skype
:一个使用人数众多的基于P2P的VOIP聊天软件。
1.安装
Qt下载地址:
https://download.qt.io/archive/qt/
本教程基于Window平台 Qt 5.14.2 给大家讲解如何进行安装和相关配置.
下载好QT安装包之后,一路傻瓜式安装即可,在选择组件时不同的版本可能会有所不同,初学者按照我下面的方法勾选就可以了。
如果是Qt5.13.2版本的话界面是这样的
2.环境变量设置
在桌面找到我的电脑(此电脑)图标,鼠标右键,打开属性窗口,选择“高级系统设置” ,在弹出的对话框中选择“环境变量”。将Qt的相关目录添加到系统环境变量中。环境变量说明:在安装目录中找到Qt库的bin目录: D:\Software\Qt5.13.2\5.13.2\mingw73_64\bin`(这是我的安装目录)
3.QtCreator
QtCreator是编写Qt程序默认使用的一款 IDE,就好比编写stm32的程序需要keil一样,在qt中编译器就是QtCreator。
使用QtCreator创建的项目目录中不能包含中文QtCreator默认使用Utf8格式编码对文件字符进行编码,我们知道字符必须编码后才能被计算机处理。为了处理汉字,程序员设计了用于简体中文的GB2312和用于繁体中文的big5。GB2312 支持的汉字太少,1995年的汉字扩展规范GBK1.0,支持了更多的汉字。2000年的 GB18030取代了GBK1.0成为了正式的国家标准。Unicode 也是一种字符编码方法,不过它是由国际组织设计,可以容纳全世界所有语言文字的编码方案:utf8和 utf16。vs写Qt程序默认使用的本地编码是 gbk。所以要修改QtCreator的编码。
QtCreator主界面介绍
4.创建第一个Qt项目
打开QtCreator新建一个项目
项目名称根据需求自己指定即可 在指定项目的存储路径的时候, 路径中不能包含中文, 不能包含中文, 不能包含中文
直接下一步
Class name 可以随便写一个,一般默认不变 Base name 有QMainWindow、QWidget、QDialog随便选一个即可
编译套件用于项目文件的编译, 如果安装了多个编译套件, 在这里选择其中一个就可以了
版本控制工具没有的话可以不选,主要用于团队开发,点击完成
这样我们就新建好了一个项目工程
双击 ui 文件即可进入设计模式,进入界面设计器 Qt Designer 编辑状态,开始进行设计器( Qt Designer )编程。
在UI设计界面添加一Label,修改其字体和文本。
之后点击编译运行即可。
至此我们已经进入了QT的大门,现在发现利用QT写上位机是不是很简单啊!这一章是入门,下一章我们将对串口调试进行讲解。
End